package io.renren.modules.police.service;

import io.renren.common.page.PageData;
import io.renren.common.service.CrudService;
import io.renren.modules.police.dto.EChartsDTO;
import io.renren.modules.police.dto.PoliceCaseDTO;
import io.renren.modules.police.entity.PoliceCaseEntity;

import java.util.List;
import java.util.Map;

/**
 * 案件信息表
 *
 * @author Mark sunlightcs@gmail.com
 * @since 1.0.0 2023-09-02
 */
public interface PoliceCaseService extends CrudService<PoliceCaseEntity, PoliceCaseDTO> {

    /**
     * 已立案
     * @param params
     * @return
     */
    List<PoliceCaseDTO> getPoliceCaseing(Map<String, Object> params);

    /**
     * 已结案
     * @param params
     * @return
     */
    List<PoliceCaseDTO> getPoliceCased(Map<String, Object> params);

    PageData<PoliceCaseDTO> getPage(Map<String, Object> params);

    PoliceCaseDTO getCaseDetail(Long id);

    void updateCase(PoliceCaseDTO dto);

    List<EChartsDTO> queryPoliceCasedPieEcharts(Map<String, Object> params);

    List<EChartsDTO> queryPoliceCasedBarEcharts(Map<String, Object> params);
}